package com.lanou.tipsy.data;

import android.graphics.Bitmap;

import com.lanou.tipsy.entity.playerList.personal.PersonalList;
import com.lanou.tipsy.entity.songInfo.SongInfoRoot;
import com.lanou.tipsy.entity.playerList.local.Mp3Info;

import java.util.ArrayList;

/**
 * Created by FengJun on 15/10/29.
 * EventBus事件类
 */
public class MyEventBus {
    //我的歌曲列表信息
    public static class PersonalLists {
        ArrayList<PersonalList> personalLists;

        public PersonalLists(ArrayList<PersonalList> personalLists) {
            this.personalLists = personalLists;
        }

        public ArrayList<PersonalList> getPersonalLists() {
            return personalLists;
        }
    }

    //我的歌曲列表信息
    public static class NetSongs {
        ArrayList<PersonalList> personalLists;
        int position;

        public NetSongs(ArrayList<PersonalList> personalLists, int position) {
            this.personalLists = personalLists;
            this.position = position;
        }

        public ArrayList<PersonalList> getPersonalLists() {
            return personalLists;
        }

        public int getPosition() {
            return position;
        }
    }


    //网络歌曲信息
    public static class SetNetSongs {
        ArrayList<SongInfoRoot> songInfos;
        int position;

        public SetNetSongs(ArrayList<SongInfoRoot> songInfos, int position) {
            this.songInfos = songInfos;
            this.position = position;
        }

        public ArrayList<SongInfoRoot> getSongInfos() {
            return songInfos;
        }

        public int getPosition() {
            return position;
        }
    }

    //网络歌曲用于凭借网址的songId和当前点击的position
    public static class NetSongId {
        ArrayList<String> songIds;
        int position;

        public NetSongId(int position, ArrayList<String> songIds) {
            this.position = position;
            this.songIds = songIds;
        }

        public ArrayList<String> getSongIds() {
            return songIds;
        }

        public int getPosition() {
            return position;
        }
    }

    //设置正在播放的图片信息(图片,歌曲名,tag)
    public static class SetSongInfo {
        String singer;//歌手
        String songs;//歌曲名
        String tag;//区分本地歌曲和网络歌曲

        public SetSongInfo(String singer, String songs, String tag) {
            this.singer = singer;
            this.songs = songs;
            this.tag = tag;
        }

        public String getSinger() {
            return singer;
        }

        public String getSongs() {
            return songs;
        }

        public String getTag() {
            return tag;
        }
    }

    //网络歌曲加载图片
    public static class SetNetPitcure {
        String imageUrl;

        public SetNetPitcure(String imageUrl) {
            this.imageUrl = imageUrl;
        }

        public String getImageUrl() {
            return imageUrl;
        }
    }

    //本地歌曲加载图片
    public static class SetLocalPicture {
        Bitmap imageUri;

        public SetLocalPicture(Bitmap imageUri) {
            this.imageUri = imageUri;
        }

        public Bitmap getImageUri() {
            return imageUri;
        }
    }

    //获得歌曲最大进度
    public static class MaxProgress {
        int MaxProgress;

        public MaxProgress(int maxProgress) {
            MaxProgress = maxProgress;
        }

        public int getMaxProgress() {
            return MaxProgress;
        }
    }

    //获得歌曲当前进度
    public static class CurrentProgress {
        int currentProgress;

        public CurrentProgress(int currentProgress) {
            this.currentProgress = currentProgress;
        }

        public int getCurrentProgress() {
            return currentProgress;
        }
    }

    //获得本地歌曲信息
    public static class SongsInfo {
        ArrayList<Mp3Info> mp3Infos;
        int position;//当前播放位置

        public SongsInfo(ArrayList<Mp3Info> mp3Infos, int position) {
            this.mp3Infos = mp3Infos;
            this.position = position;
        }

        public ArrayList<Mp3Info> getMp3Infos() {
            return mp3Infos;
        }

        public int getPosition() {
            return position;
        }
    }

    //获取当前正在播放的模式
    public static class CurrentMode {
        String mode;

        public CurrentMode(String mode) {
            this.mode = mode;
        }

        public String getMode() {
            return mode;
        }
    }

    //获得当前正在播放的歌曲的index
    public static class ListPosition {
        int index;

        public ListPosition(int index) {
            this.index = index;
        }

        public int getIndex() {
            return index;
        }
    }


    public static class Play{
        int what;

        public Play(int what) {
            this.what = what;
        }

        public int getWhat() {
            return what;
        }
    }



}
